/// 当前页结果集
class WriteoffOrderPageForPlatformResponseDto {
  /// 订单号
  final String? orderNum;
  /// 卡种类
  final String? cardType;
  /// 卡分类
  final String? cardCategory;
  /// 核销报价
  final String? price;
  /// 财务报价，美元兑换奈拉的汇率
  final String? rate;
  /// 平台折扣
  final String? discount;
  /// 卡片额度/订单金额，单位美元
  final int? cardAmount;
  /// 卡片价值/支付给C端用户的奈拉数
  final int? cashValue;
  /// 卡片代码
  final List<String>? cardCodeList;
  /// 卡片地址
  final List<String>? cardUrlList;
  /// 上传时间
  final String? cardUploadTime;
  /// 上传用户
  final String? uploadUser;
  /// 赎回率
  final String? redemptionRate;
  /// 扣款金额，单位美元
  final String? cutAmount;
  /// 团队余额，单位美元
  final String? currentBalance;
  /// 分配的代理团队名称
  final String? teamName;
  /// 核销结果，1通过，0拒绝，2未处理
  final int? writeoffResult;
  /// 备注
  final String? remark;
  /// 凭证访问地址
  final String? proofUrl;

  WriteoffOrderPageForPlatformResponseDto({
    this.orderNum,
    this.cardType,
    this.cardCategory,
    this.price,
    this.rate,
    this.discount,
    this.cardAmount,
    this.cashValue,
    this.cardCodeList,
    this.cardUrlList,
    this.cardUploadTime,
    this.uploadUser,
    this.redemptionRate,
    this.cutAmount,
    this.currentBalance,
    this.teamName,
    this.writeoffResult,
    this.remark,
    this.proofUrl,
  });

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = <String, dynamic>{};
    if (orderNum != null) data['orderNum'] = orderNum;
    if (cardType != null) data['cardType'] = cardType;
    if (cardCategory != null) data['cardCategory'] = cardCategory;
    if (price != null) data['price'] = price;
    if (rate != null) data['rate'] = rate;
    if (discount != null) data['discount'] = discount;
    if (cardAmount != null) data['cardAmount'] = cardAmount;
    if (cashValue != null) data['cashValue'] = cashValue;
    if (cardCodeList != null) data['cardCodeList'] = cardCodeList;
    if (cardUrlList != null) data['cardUrlList'] = cardUrlList;
    if (cardUploadTime != null) data['cardUploadTime'] = cardUploadTime;
    if (uploadUser != null) data['uploadUser'] = uploadUser;
    if (redemptionRate != null) data['redemptionRate'] = redemptionRate;
    if (cutAmount != null) data['cutAmount'] = cutAmount;
    if (currentBalance != null) data['currentBalance'] = currentBalance;
    if (teamName != null) data['teamName'] = teamName;
    if (writeoffResult != null) data['writeoffResult'] = writeoffResult;
    if (remark != null) data['remark'] = remark;
    if (proofUrl != null) data['proofUrl'] = proofUrl;
    return data;
  }

  factory WriteoffOrderPageForPlatformResponseDto.fromJson(Map<String, dynamic> json) {
    return WriteoffOrderPageForPlatformResponseDto(
      orderNum: json['orderNum'],
      cardType: json['cardType'],
      cardCategory: json['cardCategory'],
      price: json['price'],
      rate: json['rate'],
      discount: json['discount'],
      cardAmount: json['cardAmount'],
      cashValue: json['cashValue'],
      cardCodeList: json['cardCodeList'] != null ? List<String>.from(json['cardCodeList']) : null,
      cardUrlList: json['cardUrlList'] != null ? List<String>.from(json['cardUrlList']) : null,
      cardUploadTime: json['cardUploadTime'],
      uploadUser: json['uploadUser'],
      redemptionRate: json['redemptionRate'],
      cutAmount: json['cutAmount'],
      currentBalance: json['currentBalance'],
      teamName: json['teamName'],
      writeoffResult: json['writeoffResult'],
      remark: json['remark'],
      proofUrl: json['proofUrl'],
    );
  }
}